package com.xb.loan.fund.dao;


import com.xb.loan.fund.dao.bean.CashVerifyError;
import com.xb.loan.util.mybatis.MyBatisRepository;

import java.util.List;
import java.util.Map;

@MyBatisRepository
public interface CashVerifyErrorDao {

    /**
     * 根据日志记录对象插入错误日志记录
     * @param record    日志记录
     * @return
     */
    int insert(CashVerifyError record);

    /**
     * 删除错误日志记录
     * @param fundLimitId   日志记录编码
     * @return
     */
    int deleteByPrimaryKey(String fundLimitId);

    /**
     * 更新日志状态
     * @param map   日志编码和状态Map
     * @return
     */
    int updateErrorStatus(Map<String, Object> map);

    /**
     * 根据编码查询日志记录对象
     * @param fundLimitId   日志记录编码
     * @return
     */
    CashVerifyError selectByPrimaryKey(String fundLimitId);

    /**
     * 分页查询错误日志信息
     * @param map       查询参数
     *          platId      平台编码
     *          userId      用户编码
     *          partnerId   渠道编码
     *          orderType   订单类型
     *          errorType   错误类型
     *          status      日志状态
     *          startTime   提现开始时间
     *          endTime     提现结束时间
     *          pageNum     当前页数
     *          numPerPage  每一页显示记录条数
     * @return
     */
    List<CashVerifyError> queryCashVerifyError(Map<String, Object> map);

    /**
     * 查询日志信息总条数
     * @param map       查询参数
     *          platId      平台编码
     *          userId      用户编码
     *          partnerId   渠道编码
     *          orderType   订单类型
     *          errorType   错误类型
     *          status      日志状态
     *          startTime   提现开始时间
     *          endTime     提现结束时间
     * @retur
     */
    int queryCashVerifyErrorCount(Map<String, Object> map);
}